package com.longcai.controller.saobeipay;

import com.longcai.bean.ApiResult;
import com.longcai.service.saobeipay.ClyjSaobeiPaymentLogService;
import com.longcai.vo.payment.saobei.ClyjSaobeiPaymentLogVo;
import com.longcai.vo.payment.saobei.ClyjSaobeiPaymentRefund;
import com.longcai.vo.payment.saobei.ClyjSaobeiTradeNotify;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;

/**
 * <p>
 * 利楚扫呗（公众号预支付（统一下单）） 前端控制器
 * </p>
 *
 * @author HYF
 * @since 2019-04-08
 */
@Controller
@RequestMapping("/clyjSaobeiPayment")
public class ClyjSaobeiPaymentLogController {

    @Autowired
    private ClyjSaobeiPaymentLogService clyjSaobeiPaymentLogService;

    /**
     * 利楚扫呗 （公众号预支付统一下单）并调用微信JSAPI
     **/
    @RequestMapping("/jspay")
    public ApiResult<?> jspay(@RequestBody ClyjSaobeiPaymentLogVo clyjSaobeiPaymentLogVo) {
        ApiResult<?> result = clyjSaobeiPaymentLogService.jspay(clyjSaobeiPaymentLogVo);
        return result;
    }

    /**
     * 利楚扫呗 调用微信JSAPI回调
     **/
    @RequestMapping("/notify")
    public ApiResult<?> jspayNotify(@RequestBody ClyjSaobeiTradeNotify clyjSaobeiTradeNotify) {
        ApiResult<?> result = clyjSaobeiPaymentLogService.jspayNotify(clyjSaobeiTradeNotify);
        return result;
    }

    /**
     * 利楚扫呗 （退款申请）
     **/
    @RequestMapping("/refund")
    public ApiResult<?> refund(@RequestBody ClyjSaobeiPaymentRefund ClyjSaobeiPaymentRefund) {
        ApiResult<?> result = clyjSaobeiPaymentLogService.refund(ClyjSaobeiPaymentRefund);
        return result;
    }
}

